Concurrent programming and futures
نویسنده
چکیده
If we are manage complexity, we must create a model of the universe. The goal of model is to create a meaningful abstraction of the real world. Such an abstraction should be simpler than the real world but should also reflect accurately the real world so that we can use the model to predict the behavior of things in the real world. The object-oriented software design is about building good models. It consists of two significant pieces: a modelling language and process. In the present paper a new and little-known approach for concurrent programming is presented.
منابع مشابه
On Proving the Equivalence of Concurrency Primitives
Various concurrency primitives have been added to sequential programming languages, in order to turn them concurrent. Prominent examples are concurrent buffers for Haskell, channels in Concurrent ML, joins in JoCaml, and handled futures in Alice ML. Even though one might conjecture that all these primitives provide the same expressiveness, proving this equivalence is an open challenge in the ar...
متن کاملFutures and Promises in Alice ML
Various languages have tried to allow useful tools and solutions to concurrent programming, Alice ML is one of these. Alice ML uses futures and promises to help solve the problem of data synchronisa-tion and concurrency. This report explains how these features work, displays a detailed example, performs comparisons to other language solutions and presents related work in this area.
متن کاملVariant-Frequency Semantics for Green Futures
This paper describes an operational semantics for futures, with the primary target on energy efficiency. The work in progress is built around an insight that different threads can coordinate by running at different “paces,” so that the time for synchronization and the resulting wasteful energy consumption can be reduced. We exploit several inherent characteristics of futures to determine how th...
متن کاملTransactional Tasks: Parallelism in Software Transactions
Many programming languages, such as Clojure, Scala, and Haskell, support different concurrency models. In practice these models are often combined, however the semantics of the combinations are not always well-defined. In this paper, we study the combination of futures and Software Transactional Memory. Currently, futures created within a transaction cannot access the transactional state safely...
متن کاملObservational Semantics for a Concurrent Lambda Calculus with Reference Cells and Futures
We present an observational semantics for λ(fut), a concurrent λ-calculus with reference cells and futures. The calculus λ(fut) models the operational semantics of the concurrent higher-order programming language Alice ML. Our result is a powerful notion of equivalence that is the coarsest nontrivial congruence distinguishing observably different processes. It justifies a maximal set of correct...
متن کاملFlow Java: Declarative Concurrency for Java
This thesis presents the design, implementation, and evaluation of Flow Java, a programming language for the implementation of concurrent programs. Flow Java adds powerful programming abstractions for automatic synchronization of concurrent programs to Java. The abstractions added are single assignment variables (logic variables) and futures (read-only views of logic variables). The added abstr...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- Annales UMCS, Informatica
دوره 1 شماره
صفحات -
تاریخ انتشار 2003